/*
 * @Author: WHAlex
 * @Date: 2025-01-21 09:37:31
 *
 * Copyright (c) 2025 by atguigu, All Rights Reserved.
 */
#ifndef __INF_OV2640_H__
#define __INF_OV2640_H__

#include <esp_log.h>
#include <esp_system.h>
#include <nvs_flash.h>
#include <sys/param.h>
#include <string.h>
#include "esp_camera.h"

#define CAM_PIN_PWDN 40
#define CAM_PIN_RESET -1 // software reset will be performed
#define CAM_PIN_VSYNC 41
#define CAM_PIN_HREF 39
#define CAM_PIN_PCLK 34
#define CAM_PIN_XCLK 37
#define CAM_PIN_SIOD 0
#define CAM_PIN_SIOC 1
#define CAM_PIN_D0 9
#define CAM_PIN_D1 11
#define CAM_PIN_D2 12
#define CAM_PIN_D3 10
#define CAM_PIN_D4 33
#define CAM_PIN_D5 35
#define CAM_PIN_D6 36
#define CAM_PIN_D7 38

void Inf_OV2640_Init(void);

void Inf_OV2640_TakePic(uint8_t **data, size_t *len);

void Inf_OV2640_ReturnPic(void);

#endif
